### Artigo: Por que s�o convocadas as audi�ncias p�blicas no STF?
### Autores: Marjorie Corr�a Marona, Mateus Morais Ara�jo  e Lucas Fernandes de Magalh�es
### C�digos utilizados para gerar os resultados das Tabelas 5 e 6 do artigo.

library(tidyverse)
library(rio)
library(lubridate)
library(gdata)
library(Zelig)
library(stargazer)

##################
##################

rm(list=ls())
options(scipen=999)

setwd() #Definir o caminho da pasta em que se encontram os arquivos baixados

bd <- import("base.xlsx") %>% 
  drop_na(Julgamento_data)


######################
###Codificar a base###
######################

bd <- bd %>% mutate(resultado_relator=ifelse(resultado_relator=="Vencedor(a)",0,1),
                    Julgamento_vota��o=ifelse(Julgamento_vota��o=="Maioria",1,0),
                    Julgamento_dissenso=Julgamento_dissenso*100)

###########################
###Estat�stica descritiva##
###########################

##Total de processos com variavel de votacao majoritaria
a <- bd %>% nrow()

#Estatisticas de Votacao majoritaria
media_votacao_maj <- bd %>% group_by(ap_cod) %>% 
  summarise(media=100*mean(Julgamento_vota��o, na.rm=T),
            dp=sd(Julgamento_vota��o, na.rm=T)) %>% 
  mutate(id="Vota��o Majorit�ria")

##Exportar a Tabela 3
export(estatisticas, "tabela3_estatisticas.xlsx")


#################
#######MODELO####
#################

#Julgamento votacao
reg1 <- glm(ap_cod ~ Julgamento_vota��o, data=bd, family=binomial)

summary(reg1)
exp(coef(reg1))

##
reg2 <- glm(ap_cod ~ Julgamento_vota��o+
              total_pet_am_curiae_antes_convoc, data=bd, family=binomial)

summary(reg2)
exp(coef(reg2))

#
reg3 <- glm(ap_cod ~ Julgamento_vota��o+
              total_pet_am_curiae_antes_convoc+
              total_partes, data=bd, family=binomial)

summary(reg3)
exp(coef(reg3))

#
reg4 <- glm(ap_cod ~ Julgamento_vota��o+
              total_pet_am_curiae_antes_convoc+
              total_partes+
              total_noticia_antes_convoc, data=bd, family=binomial)

summary(reg4)
exp(coef(reg4))

#
reg5 <- glm(ap_cod ~ Julgamento_vota��o+
              total_pet_am_curiae_antes_convoc+
              total_partes+
              total_noticia_antes_convoc+
              as.factor(relator)+
              as.factor(ano_inicio)+classe, data=bd, family=binomial)

summary(reg5)
exp(coef(reg5))

#
reg6 <- glm(ap_cod ~ Julgamento_vota��o +
              total_pet_am_curiae_antes_convoc+
              total_partes+
              as.factor(relator)+
              as.factor(ano_inicio)+classe, data=bd, family=binomial)

summary(reg6)
exp(coef(reg6))


stargazer(reg1,reg2,reg3,reg4,reg5,reg6,
          type="html",out="regressao2.doc")




##############################################################
####Modelo com corre��o para eventos raros
reg <- zelig(ap_cod ~ Julgamento_vota��o+total_pet_am_curiae_antes_convoc+
                total_partes+
                as.factor(relator)+
                +as.factor(ano_inicio)+classe,
              model="relogit",
              bias.correct=TRUE,
              cite=FALSE,
              data=bd)

summary(reg)
exp(coef(reg))


